package com.jhhc.StormSurgeForecast.StormSurge.Dao;

import java.util.List;


import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.jhhc.StormSurgeForecast.StormSurge.Pojo.FBC.BDMS_FBC_RESULT_SCHEME;

@Mapper
public interface BDMS_FBC_RESULT_SCHEMEMapper {


    //查询台风预报方案   @Param("backDays") String backDays
    List<BDMS_FBC_RESULT_SCHEME> GetCalSchemeInfoByTyphoonIds(@Param("projectId") int projectId,
                @Param("typhoonId") int typhoonId,@Param("startTime") String startTime,
                 @Param("endTime") String endTime,@Param("modelId") int  modelId);

    List<BDMS_FBC_RESULT_SCHEME> GetCalSchemeInfoByTyphoonIds2(@Param("projectId") int projectId,
                                                              @Param("typhoonId") int typhoonId,@Param("startTime") String startTime,
                                                              @Param("endTime") String endTime,@Param("modelId") int  modelId);

    //查询台风预报方案   @Param("backDays") String backDays
    List<BDMS_FBC_RESULT_SCHEME> GetCalSchemeInfoByPidTrue(@Param("projectId") int projectId,
                                                             @Param("startTime") String startTime,
                                                              @Param("endTime") String endTime,
                                                       @Param("modelId") Integer  modelId);


    List<BDMS_FBC_RESULT_SCHEME> GetCalSchemeInfoByPidFalse(@Param("projectId") int projectId,
                                                           @Param("startTime") String startTime,
                                                           @Param("endTime") String endTime,
                                                           @Param("modelId") int  modelId);

    //根据pid台风id获取方案
    List<BDMS_FBC_RESULT_SCHEME> selectByPid(@Param("projectId") int projectId,
                                             @Param("scheme_id") int scheme_id);


    //获取最新一条的预报方案列表
    BDMS_FBC_RESULT_SCHEME  selectLatestOneBySchemeId( @Param("pid") int projectId,@Param("typhoonId") Integer typhoonId,@Param("time") String time,@Param("modelId" )Integer modelId);


    //获取最新一条的预报方案列表
    BDMS_FBC_RESULT_SCHEME  selectLatestOneBySchemeIdMysql( @Param("pid") int projectId,@Param("typhoonId") Integer typhoonId,@Param("time") String time,@Param("modelId" )Integer modelId);



    BDMS_FBC_RESULT_SCHEME  selectLatestOneByFlag( @Param("pid") int projectId,@Param("typhoonId") Integer typhoonId,@Param("time") String time,@Param("modelId" )Integer modelId);



    //根据计算方案查询id查询计算方案
    BDMS_FBC_RESULT_SCHEME selectTimeByCalShemeId(@Param("scheme_id") int scheme_id);
    BDMS_FBC_RESULT_SCHEME selectTimeByCalShemeId1(@Param("scheme_id") int scheme_id,@Param("modelid") int modelid);

    //根据日期查询计算方案
    BDMS_FBC_RESULT_SCHEME selectSchemeByTime(@Param("projectId") int projectId,
                                              @Param("startTime") String startTime,
                                              @Param("endTime") String endTime);
    //根据日期查询计算方案
    BDMS_FBC_RESULT_SCHEME selectSchemeByTimeMysql(@Param("projectId") int projectId,
                                              @Param("startTime") String startTime,
                                              @Param("endTime") String endTime);

    //根据日期查询计算方案
    BDMS_FBC_RESULT_SCHEME selectSchemebyTime(@Param("projectId") int projectId,
                                              @Param("startTime") String startTime);

    //根据日期查询计算方案
    BDMS_FBC_RESULT_SCHEME selectSchemebyTimeMysql(@Param("projectId") int projectId,
                                              @Param("startTime") String startTime);

    BDMS_FBC_RESULT_SCHEME selectNewOne();
    BDMS_FBC_RESULT_SCHEME selectNewOneByModelId(int modelId,  @Param("startTime") String startTime,
                                                 @Param("endTime") String endTime);
    BDMS_FBC_RESULT_SCHEME selectNewOneMysql();


    BDMS_FBC_RESULT_SCHEME selectSchemeByTime2(@Param("projectId") int projectId,
                                              @Param("startTime") String startTime,
                                              @Param("endTime") String endTime);

    BDMS_FBC_RESULT_SCHEME selectSchemeByTime3(@Param("projectId") int projectId,
                                               @Param("startTime") String startTime,
                                               @Param("endTime") String endTime, @Param("modelId") int modelId);
    //根据日期查询计算方案
}

